package cn.kgc.spring.service.impl;

import cn.kgc.spring.annotations.Autowired;
import cn.kgc.spring.mapper.UserMapper;
import cn.kgc.spring.service.UserService;

/**
 * @author 课工场
 * @date 2024/2/18
 * @description
 * mvc 分层的结构 是一种经典的项目结构设计方式  可以在一定程度上解决代码的耦合问题
 * mvc分层结构之间存在依赖关系  一旦实现改变 需要修改源代码  违背代码编写的开闭原则
 *
 *  controller >>  service >> mapper    new  层次之间的依赖关系仍然存在耦合 不利于代码的维护
 *  23种经典设计模式
 *  工厂模式   实例工厂   反射 配置文件

 */

public class UserServiceImpl implements UserService {

    // private UserMapper userMapper = new UserMapperImpl();
    // private UserMapper userMapper = new UserMapperOracleImpl();
    // 从实例工厂中获取对象
    // private UserMapper userMapper = BeanFactory.getBean(UserMapperOracleImpl.class);
    // private UserMapper userMapper = (UserMapper) BeanFactory.getBean("userMapper");
    // private UserMapper userMapper = BeanFactory.getBean("userMapper", UserMapperImpl.class);

    @Autowired
    private UserMapper userMapper;


    @Override
    public String deleteById(Integer id) {
        return userMapper.deleteById(id);
    }
}
